Method and apparatus for internet-based interactive programming

ABSTRACT

A method and system for the creation of interactive programming incorporating viewer interactions. An interactive program includes moderator content generated by the moderator and edited participant commentary, such as interactive messages, and is served by a moderator server. Moderators create and manage interactive programs using a Web site. Viewers register to be participants in interactive programs using the Web site as well. The interactive programs can be distributed as electronic documents written in a markup language such as HTML or XML over a communications network such as the Internet. The interactive programs can also be converted to conventional interactive television content for distribution over an interactive television network. The interactive programs can also be distributed over a virtual private network for use as a collaboration tool by an enterprise such as a business concern. The interactive programs require few processing resources so the interactive programs can be embedded within other Web processes such as electronic commerce and television commerce transactions.

BACKGROUND OF THE INVENTION

[0001] This invention pertains generally to the field of interactiveprogramming and more specifically to creating interactive programmingincluding participants' interactions.

[0002] Television has traditionally been a serial process where atelevision program having a series of images and sounds are broadcast toa viewer in an audience with limited opportunity for the viewer toparticipate in the television program. The evolution to a moreinteractive form of television, or television where the viewer isallowed to participate, was slow given the lack of bidirectionalcommunication channels between the viewer and the television programbroadcaster. When bidirectional communication channels were created,they tended be of insufficient bandwidth for communication of complexviewer interactions with the television program.

[0003] Development of a nearly ubiquitous communications network, namelythe Internet, has greatly expanded the use of interactive television.However, viewer participation has so far been limited to choosingtelevision content, responding to advertising messages, and answeringviewer questionnaires or polls. This is primarily because mostinteractive television programming follows a conventional televisionparadigm wherein the television programming is wrapped inadvertisements; and the only responses needed from an audience are towatch linear pre-recorded programs and to buy advertised items orservices. Little has been done to fully involve the audience in a richparticipatory experience where the audience has as much control andinfluence over the content of an interactive program as the originatorof the interactive program. This is in contrast to the expectations ofsome viewers who want a richer and more satisfying participatoryexperience within the context of an interactive program.

[0004] Some interactive television formats also have a disadvantage inthat, although they may use the Internet as a bidirectionalcommunication channel, the interactive television format is dependentupon set-top-boxes and middleware that a viewer either purchases orleases from a broadcaster such as a cable operator. While these devicesmay have a variety of functional features, they may require anadditional expenditure that a viewer or a Multiple Systems Operator(MSO) may not want to incur, especially if the viewer already has anInternet-enabled device such as a home computer. This makes mostexisting interactive television programming “heavy” in the sense thatspecialized hardware is needed to take advantage of the interactivecontent embedded in an interactive programming signal. Additionally, thecombination of a required set-top-box and specialized interactivetelevision formats make interactive programming distributed over aninteractive television network difficult to integrate with conventionalWeb content such as Web pages available from a Web site.

[0005] Therefore, a need exists for a light-weight interactiveprogramming system allowing for rich viewer participation which iseasily integrated with existing Web content. The present invention meetssuch need.

SUMMARY OF THE INVENTION

[0006] In one aspect of the invention, an interactive program includesmoderator content generated by the moderator and edited participantcommentary that is served by a moderator server. Moderators create andmanage interactive programs using a Web site. Viewers register to beparticipants in interactive programs using the Web site as well. Theinteractive programs can be distributed as electronic documents writtenin a markup language such as HTML or XML over the Internet. Theinteractive programs can also be converted to conventional interactivetelevision content for distribution over an interactive televisionnetwork. The interactive programs can also be distributed over a VirtualPrivate Network (VPN) for use as a secure collaboration tool by anenterprise such as a business concern. The interactive programs requirefew processing resources so the interactive programs can be embeddedwithin other Web processes such as electronic commerce (eCommerce) ortelevision commerce (t-Commerce) transactions.

[0007] In another aspect of the invention, a method is provided forcreating and transmitting an interactive program over a communicationsnetwork. A moderator server is operably coupled to the communicationsnetwork. A moderator client and a plurality of viewer clients areoperably coupled to the moderator server via the communications network.In operation, participant comment signals are received by the moderatorserver via the communications network from the plurality of viewerclients and transmitted by the moderator server via the communicationsnetwork to the moderator client. The moderator server then receives fromthe moderator client edited participant comment signals and moderatorsignals and generates interactive program signals using the editedparticipant comment signals and the moderator signals. The interactiveprogram signals are then transmitted by the moderator server via thecommunications network to the plurality of viewer clients.

[0008] In another aspect of the invention, a data processing system isadapted for creating and transmitting an interactive program to aplurality of viewer clients as described above. In addition, the dataprocessing system receives content signals from a content server andgenerates the interactive program signals using the content signals,edited participant comment signals, and the moderator signals.

[0009] In another aspect of the invention, the data processing systemreceives content signals from a content server and transmits the contentsignals via the communications network to the viewer clients whileincorporating the content signals into the interactive program.

[0010] In another aspect of the invention, the communications network isa virtual private network thus enabling private and secure transmissionof an interactive program throughout an enterprise.

[0011] In another aspect of the invention, the participant commentsignals further include an interactive program rating signal indicatinga level of audience satisfaction with the interactive program.

[0012] In another aspect of the invention, the moderator signals furtherinclude a participant exclusion signal corresponding to a specificviewer client from the plurality of viewer clients. The participantexclusion signal is used to exclude participant comments received fromthe specific viewer client thus preventing specified viewers fromparticipating in the interactive program.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] These and other features, aspects, and advantages of the presentinvention will become better understood with regard to the followingdescription, appended claims, and accompanying drawings where:

[0014]FIG. 1 is a conceptual diagram of a system for creating aninteractive program incorporating participant interactions in accordancewith an exemplary embodiment of the present invention;

[0015]FIG. 2 is a deployment diagram of a system for creating aninteractive program in accordance with an exemplary embodiment of thepresent invention;

[0016]FIG. 3 is a sequence diagram of the operations within a system forcreating an interactive program in accordance with an exemplaryembodiment of the present invention;

[0017]FIG. 4 is a screen capture of a moderator's interface used tocontrol generation of an interactive program in accordance with anexemplary embodiment of the present invention;

[0018]FIG. 5 is a screen capture of a viewer's interface used to viewand interact with an interactive program in accordance with an exemplaryembodiment of the present invention;

[0019]FIG. 6 is a diagram depicting a process for receiving viewerreactions to an interactive program and calculating an audience approvalsystem rating for the interactive program in accordance with anexemplary embodiment of the present invention;

[0020]FIG. 7 is a diagram depicting the ways in which a moderator mayinteract with a system for creating an interactive program in accordancewith an exemplary embodiment of the present invention;

[0021]FIG. 8 is a use case diagram depicting ways in which a viewer mayinteract with a system for creating an interactive program in accordancewith an exemplary embodiment of the present invention;

[0022]FIG. 9 is a Web site diagram of an interactive program creationsystem in accordance with an exemplary embodiment of the presentinvention;

[0023]FIG. 10 is a screen capture of an edit profile viewer interface inaccordance with an exemplary embodiment of the present invention;

[0024]FIG. 11 is a screen capture of a hub viewer interface inaccordance with an exemplary embodiment of the present invention;

[0025]FIG. 12 is a screen capture of a program guide viewer interface inaccordance with an exemplary embodiment of the present invention;

[0026]FIG. 13 is a screen capture of an interactive program archiveviewer interface in accordance with an exemplary embodiment of thepresent invention;

[0027]FIG. 14 is a screen capture of a moderator interface for aninteractive program authoring tool in accordance with an exemplaryembodiment of the present invention;

[0028]FIG. 15 is a screen capture of a moderator interface for aninteractive program reporting tool in accordance with an exemplaryembodiment of the present invention;

[0029]FIG. 16 is a screen capture of a moderator interface for aparticipant interaction report generated in accordance with an exemplaryembodiment of the present invention;

[0030]FIG. 17 is a screen capture of a moderator interface for anadvertising report generated in accordance with an exemplary embodimentof the present invention;

[0031]FIG. 18 is a database entity relation diagram for a moderatordatabase in accordance with an exemplary embodiment of the presentinvention;

[0032]FIG. 19 is a screen capture of a viewer interface for anon-moderator based interactive program associated with a broadcast inaccordance with an exemplary embodiment of the present invention;

[0033]FIG. 20 is a screen capture of a viewer interface for a broadcastprogram guide in accordance with an exemplary embodiment of the presentinvention;

[0034]FIG. 21 is a screen capture of a viewer interface for aninteractive program incorporating Web content in accordance with anexemplary embodiment of the present invention;

[0035]FIG. 22 is a screen capture of a viewer interface for aninteractive program incorporating Web content in accordance with anotherexemplary embodiment of the present invention;

[0036]FIG. 23 is a screen capture of a viewer interface for a facilityto manage a viewer's personal favorite interactive programs inaccordance with an exemplary embodiment of the present invention;

[0037]FIG. 24 is a screen capture of a viewer interface for a facilityto suggest programs to a viewer in accordance with an exemplaryembodiment of the present invention;

[0038]FIG. 25 is a deployment diagram of a process for conversion anddelivery of interactive programs via an interactive television networkin accordance with an exemplary embodiment of the present invention;

[0039]FIG. 26 is a hardware architecture diagram of a computing devicesuitable for use as a moderator server host in accordance with anexemplary embodiment of the present invention;

[0040]FIG. 27 is a collaboration diagram depicting an interactiveprogramming generation process in accordance with an exemplaryembodiment of the present invention;

[0041]FIG. 28 is a screen capture of an interactive program home viewerinterface in accordance with an exemplary embodiment of the presentinvention;

[0042]FIG. 29 is a screen capture of an interactive program systemlog-in interface in accordance with an exemplary embodiment of thepresent invention;

[0043]FIG. 30 is a process flow diagram of an interactive programgeneration process in accordance with an exemplary embodiment of thepresent invention;

[0044]FIG. 31 is a process flow diagram of an interactive program reportgeneration process in accordance with an exemplary embodiment of thepresent invention;

[0045]FIG. 32 is a process flow diagram of a viewer notification processin accordance with an exemplary embodiment of the present invention;

[0046]FIG. 33 is a deployment diagram of a locally hosted moderatorserver in accordance with an exemplary embodiment of the presentinvention;

[0047]FIG. 34 is a participant question filtering moderator interface inaccordance with an exemplary embodiment of the present invention;

[0048]FIG. 35 is an illustration of the operation of a participantquestion filtering facility in accordance with an exemplary embodimentof the present invention;

[0049]FIG. 36 is a process flow diagram of a participant question filterprocess in accordance with an embodiment of the present invention;

[0050]FIG. 37 is a deployment diagram for a telephony system fordelivery of an interactive program in accordance with an embodiment ofthe present invention;

[0051]FIG. 38 is a sequence diagram for a telephony process as used by atelephony system for delivery of an interactive program in accordancewith an embodiment of the present invention; and

[0052]FIG. 39 is a screen capture of an interactive program authoringwizard in accordance with an exemplary embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

[0053]FIG. 1 is a conceptual diagram of a system for creating aninteractive program incorporating participant interactions in accordancewith an exemplary embodiment of the present invention. A moderator 100hosts an interactive program, such as a broadcast program with a talkshow format, that is transmitted to an audience having a plurality ofviewers 102. The interactive program takes place on a virtual stage 104where the moderator generates interactive programming for transmissionto the viewers. The moderator transmits the interactive program 106 tothe viewers. The viewers may passively watch the interactive program ormay become active participants by generating their own comments 108 thatare transmitted back to the moderator. The moderator edits or filtersthe participant comments and retransmits the edited participant commentsas part of the interactive program. The viewers may communicate witheach other during the interactive program by exchanging audienceinteractive messages 110 between themselves.

[0054] The moderator controls the content of the interactive program ina variety of ways. The moderator introduces the initial topic or contentfor audience interaction. For example, the moderator may introduce atopical event such as a news story and then ask for participantcomments. The moderator may also use previously prepared content such asa non-interactive program that is transmitted to the audience in orderto elicit audience member responses and engage viewers. The moderatorcan invite virtual guests 112 from the audience onto the virtual stage.While on the virtual stage, the virtual guests exchange interactivemessages directly with the moderator rather than with other audiencemembers or participants. The moderator may also exclude a participant orviewer from the audience. Additionally, the moderator may generateadditional interactive programming for use by the audience such as pollsso that the audience can participate in the interactive program byselecting responses to a question from a list of answers. The results ofthe participant responses are aggregated for inclusion in theinteractive program.

[0055] In one system for creating an interactive program incorporatingparticipant interactions in accordance with an exemplary embodiment ofthe present invention, the interactive programs are talk shows hosted byindependent moderators and delivered to an audience via the Internet.This system allows a moderator to be recognized as an expert orrespected voice in a particular field while building a community ofviewer participants interested in that particular field. The systemallows the moderator to create a controlled and moderated environmentwhere the moderator directs the flow of information and has completecontrol over the medium. The system is cost-effective because no specialhardware or training is needed to operate the system. The systemfeatures a customizable Web-based interface for moderators and viewersto use in creating customized collaborative interactive programs.

[0056]FIG. 2 is a deployment diagram of a system for creating aninteractive program incorporating participant interactions in accordancewith an exemplary embodiment of the present invention. A moderator 100transmits an interactive program to a plurality of viewers, asexemplified by viewers 200 a and 200 b, via a communications network 202such as the Internet. The moderator uses a moderator client 204 totransmit moderator signals over communications link 206 andcommunications link 208 to a moderator server 210. The moderator serveruses the moderator signals to generate an interactive program that istransmitted over communication link 208 and communications links 212 aand 212 b to a plurality of viewer clients as exemplified by viewerclients 214 a and 214 b. The viewers become participants by respondingto the interactive program by generating and transmitting to themoderator server a plurality of participant comment signals using theviewer clients. The participant comment signals encode the participants'commentary about the interactive program. The moderator server receivesthe participant comment signals and retransmits them to the moderatorclient where the moderator edits the participant comment signals. Themoderator generates new moderator signals that are transmitted to themoderator server along with the edited participant comment signals. Themoderator server uses the moderator signals and the edited user commentsignals to generate additional interactive program signals that aretransmitted to the viewers' clients. The process of receivingparticipant comment signals, editing the user comment signals, andgenerating new interactive program signals is repetitively performed inorder to generate an interactive program incorporating viewerinteractions.

[0057] In a system for creating an interactive program incorporatingviewer interactions in accordance with an exemplary embodiment of thepresent invention, the moderator server is operably coupled to contentserver 216 via a communications link 218. The content server hosts acontent source 220 including content suitable for broadcast by themoderator server. Such content may include past broadcast programs thatthe moderator is using as a topic for further discussion within theaudience. The moderator instructs the moderator server to request andreceive content signals from the content server and the moderator servergenerates an interactive program including the content signals. In thisway, non-interactive content may be enhanced with an interactivecomponent thus leveraging non-interactive content by creating aninteractive program using content without an interactive component. Inanother embodiment of enhanced content, the content is synchronized withthe interactive component and the content is transmitted to the viewerclient from a server other than the moderator server in programsynchronous fashion.

[0058] In a system for creating an interactive program incorporatingviewer interactions in accordance with an exemplary embodiment of thepresent invention, the moderator server hosts software facilities forthe moderator to use in generating an interactive program. The moderatorserver is operably coupled to a moderator database 230 includingmoderator information describing the type of interactive program themoderator produces and the moderator's interactive program broadcastschedule. The moderator information may be used to automaticallygenerate a dynamic programming guide thus helping viewers find themoderator's interactive program. In addition, the moderator serverrecords viewer interaction data describing the amount, timing, and typeof viewer interactions with the moderator's produced interactiveprogramming. The moderator may access the viewer interaction data togenerate reports regarding the moderator's interactive programming.

[0059] In a system for creating an interactive program incorporatingviewer interactions in accordance with an exemplary embodiment of thepresent invention, the moderator server hosts a viewer database 232including viewer profile information. Viewer profile informationincludes information about viewer preferences and viewer notificationrequests. The viewer preferences are used by the moderator server tosuggest interactive programming generated by a moderator which may matchthe viewer's stated preferences. The viewer notification requests areused by the moderator server to generate viewer notifications that aretransmitted to a viewer in order to notify a viewer when a specificinteractive program is about to be broadcast.

[0060] In one embodiment of a viewer notification generation process inaccordance with the present invention, the privacy of the viewer isprotected by not allowing the moderator access to viewer profiles. Forexample, the moderator may initiate a notification process but themoderator is never allowed to see to which viewers the notifications aresent. In addition, any viewership reports generated on behalf of amoderator use aggregate data for the viewers so that the viewers'identifications are not associated with the individual viewershipreports.

[0061] In a system for creating an interactive program incorporatingviewer interactions in accordance with an exemplary embodiment of thepresent invention, the audience and moderator comment on a broadcastprogram over which the moderator has minimal control. In thisembodiment, a broadcaster 222 transmits a broadcast media signal 224received by a viewer's broadcast media receiver 226 and a moderator'sbroadcast media receiver 228. In this embodiment, the moderator and theaudience watch the broadcast program and exchange commentary about thebroadcast program over the communications network as described above. Inthis way, non-interactive programming can be supplemented with aninteractive component. Exemplary broadcast programs include broadcastsof real-time events, such as sporting events or breaking news stories,and pre-recorded programming such entertainment programs ordocumentaries.

[0062]FIG. 3 is a sequence diagram of a process within a system forcreating an interactive program incorporating viewer interactions inaccordance with an exemplary embodiment of the present invention. Amoderator server 210 receives participant comments 300 a and 300 b froma plurality of viewer clients as exemplified by viewer clients 212 a and212 b. The moderator server transmits the participant comments, 300 aand 300 b, to a moderator client 204. A moderator uses the moderatorclient to edit (302) the participant comments and generate (304)moderator comments. The edited participant comments and the moderatorcomments 306 are transmitted to the moderator server. The moderatorserver uses the moderator comments and the edited participant commentsto generate (308) viewer interactive programming, 310 a and 310 b, thatis transmitted to the plurality of viewer clients and moderatorinteractive programming 312 that is transmitted to the moderator client.The process is repeated indefinitely to generate an interactive programwith the plurality of viewer's interacting with the viewer interactiveprogramming and the moderator using the moderator interactiveprogramming to moderate the generation process.

[0063] In one embodiment of a system for creating an interactive programin accordance with an exemplary embodiment of the present invention, theinteractive programming generated by the moderator server is stored in amoderator database for archival purposes. The interactive programmingcan be indexed and cataloged for generation of an archive listingdescribing the archived interactive programming. A viewer can thenrequest archived interactive programming for viewing at a later time for“on-demand” viewing.

[0064] In one embodiment of a system for creating an interactive programin accordance with an exemplary embodiment of the present invention, aviewer can initiate the creation of an archive for an interactiveprogram. As the interactive program is produced and transmitted to theviewer, the interactive program signals are stored for the viewer's ownuse. For example, a viewer can initiate the creation of an archive for ashort period of time so that the viewer can leave the interactiveprogram and rejoin the interactive program and be able to view theportions of the interactive program that the viewer missed. As anotherexample, the viewer can create a personal archive of past interactiveprograms in a manner similar to a personal video recorder.

[0065] In another system for creating an interactive program inaccordance with an exemplary embodiment of the present invention, thecommunications network is the Internet and the viewer clients andmoderator client are Web browsers. The moderator server receivesmoderator and participant comment signals in the form of POST requestsand generates the interactive program as an interactive electronicdocument written in a document markup language such as Hyper Text MarkupLanguage (HTML) or extensible Markup Language (XML) that is transmittedto the viewer clients. The viewer clients parse the electronic documentand generate viewer displays using the instructions in the electronicdocument. The viewers respond to the viewer displays by entering textand selecting elements from the viewer displays. These viewerinteractions are transmitted to the moderator server by the viewer'sclients in subsequent POST messages. The moderator receives a differentset of interactive moderator electronic documents that implement amoderator user interface enabling the moderator to control theoperations of the moderator server.

[0066] In one system for creating an interactive program in accordancewith an exemplary embodiment of the present invention, the system isdeployed using the Microsoft® TV platform which is a standards-based,client and server software middleware system for deploying interactiveprogramming. The platform includes a client software application hostedby a set-top-box and a server software application operably coupled by acommunications network. The client software application includes a Webbrowser that can be used much like a conventional Web browser and anapplication programming interface for building native applications thatare hosted by the set-top-box. The server includes several managementfunctions including t-commerce and client management applications.

[0067] In another system for creating an interactive program inaccordance with an exemplary embodiment of the present invention, theinteractive programming generated by the moderator server furtherincludes “click-through” style banner ads for selection by a viewer. Ifa viewer selects a click-through banner ad, the viewer's interactionwith the banner ad is recorded in a moderator database in order togenerate click-through activity related to the interactive programming.The banner ads may come either from the moderator server or an ad servernot affiliated with the moderator server.

[0068]FIG. 37 is a deployment diagram for a telephony system fordelivery of an interactive program in accordance with an embodiment ofthe present invention. A previously described moderator server 210 isoperably coupled via a communications network 202 to previouslydescribed viewer client 214 a. A viewer 200 a, views an interactiveprogram by accessing the moderator server using the viewer client. Toparticipate, the viewer uses a telephone device 3700 to connect to atelephony agent 3702 operably coupled to the moderator server via thecommunications network. In operation, the viewer uses the telephone todial up the telephony agent. The telephony agent receives audio signalsand converts the audio signals to text signals that are transmitted tothe moderator server via the communications network. In turn, themoderator server re-routes the textual component signals of aninteractive program to the telephony agent. The telephony agent receivesthe textual component signals and converts the textual component signalsinto audio signals for transmission to the viewer via the telephone.

[0069] In another interactive program creation system in accordance withan embodiment of the present invention, a viewer downloads and installsa custom client plug-in that allows a viewer a built-in microphone onthe viewer client. Using a control panel, participants direct theirquestions or comments to either the virtual stage or the audienceinteractive message area. The spoken words are digitized by the viewerclient, analyzed, translated into text form, and transmitted via thecommunications link to the moderator server. The question or commentthen appears in the interactive program. The plug-in allows viewers toparticipate in an interactive program in a traditional, voice-based wayif they choose to.

[0070] In another interactive program creation system in accordance withan embodiment of the present invention, the spoken words are nottranslated to text. Instead, the digitized voice is transmitted directlyover the communications link to the moderator server such as in Voiceover Internet Protocol (VoIP) transmissions.

[0071]FIG. 38 is sequence diagram for a telephony process as used by atelephony system for delivery of an interactive program in accordancewith an embodiment of the present invention. A viewer uses a telephonedevice 3700 to send participant voice signals to a telephony agent 3702.The telephony agent converts 3802 the participant voice signals to textin a speech-to-text conversion process. The textual participant comments3804 are transmitted to the moderator server. The textual participantcomments are used to generate 3806 viewer interactive programmingsignals 3808 in a to-be-described process. The moderator servertransmits the viewer interactive programming signals to the viewerclient and transmits a second set of viewer interactive programmingsignals 3810 to the telephony agent. The telephony agent converts 3812the textual portions of the viewer interactive programming to signalsfor an audio version of the viewer interactive programming 3814 in atext to speech conversion process. In this way, a viewer can participatein an interactive program using a telephone device for the generation ofviewer interaction signals.

[0072] In another telephony process as used by a telephony system fordelivery of an interactive program in accordance with an embodiment ofthe present invention, the video components of the interactive programare dispensed with and the participant interacts with the textualcomponents of the interactive program using the telephone device. Inthis way, an interactive program can be created by a moderator with onlytextual or audio and textual components that is accessible to aparticipant using only a telephone device.

[0073]FIG. 27 is a collaboration diagram depicting an interactiveprogramming generation process in accordance with an exemplaryembodiment of the present invention. A moderator server 210 includes avirtual stage content engine 2702 and an audience content engine 2704.These content engines generate content, such as the content for a chatroom, and transmit the content to an interactive program generator 2706included in the moderator server. The virtual stage content enginereceives previously described moderator comments and edited participantcomments 306 from the previously described moderator client. The virtualstage content engine uses the moderator's comments and editedparticipant comments to generate moderator content for a to-be-describedstage section or area in an interactive program. The audience contentengine receives previously described participant comments, 300 a and 300b, from the previously described viewer clients, 212 a and 212 b, editedparticipant comments and moderator comments 306 from the moderatorclient, and uses the participant comments, edited participant comments,and moderator comments to generate audience content for ato-be-described audience section or area in an interactive program.

[0074] The interactive program generator receives the moderator contentand the audience content and uses the content to generate enhancedinteractive programming. The interactive programming includes viewerinteractive programming 310 a and 310 b that is transmitted to theviewer clients for display and use of the viewers. The interactiveprogramming further includes moderator interactive programming 312transmitted to the moderator for viewing and use by the moderator. Thecycle of receiving participant, moderator and edited participantcomments and using the comments to generate interactive programming fortransmission to the moderator and viewer is repeated indefinitely tocreate a continuous interactive program.

[0075] In an interactive program creation system in accordance with anexemplary embodiment of the present invention, content 2708 from apreviously described content server 216 is received by the interactiveprogram generator and the content is included in the generatedinteractive programming. In an interactive program creation system inaccordance with another exemplary embodiment of the present invention, avirtual guest client 2710 transmits virtual guest comments 2712 to thevirtual stage content engine for inclusion in the virtual stage contentgenerated by the virtual content engine.

[0076] In an interactive program creation system in accordance withanother exemplary embodiment of the present invention, the moderator,participant, and guest interactive messages are chat messages and thevirtual stage and audience content engines are chat engines. Thetext-based output from the chat engines is used by the interactiveprogram generator generate interactive programming including electronicdocuments, such as transcripts, composed in a document markup languagesuch as HTML or XML.

[0077]FIG. 30 is a process flow diagram of an interactive programgeneration process in accordance with an exemplary embodiment of thepresent invention. A moderator server receives (3000) moderatorcommentary and edited participant commentary 3001 from a moderator. Themoderator server receives (3002) participant commentary 3003 fromviewers in an audience. The moderator server uses the participantcommentary, the moderator commentary, and the edited participantcommentary to generate (3004) viewer interactive programming 3006 fortransmission to viewers in the audience. The moderator server uses themoderator commentary and the edited participant commentary to generate(3008) moderator interactive programming 3010 for transmission to themoderator. The moderator then transmits (3012) the moderator interactiveprogramming to the moderator and the viewer interactive programming tothe viewers in an audience. The process is repeated (3014) continuouslyto generate an interactive program.

[0078]FIG. 4 is a screen capture of a moderator interface used tocontrol generation of an interactive program in accordance with anexemplary embodiment of the present invention. A moderator's interface400 includes a trademark field 402 for display of a moderator serveroperator's trademark, in this screen capture, talkshow.com^(SM) is aservice mark of Lakeview Capital Trust, a Pennsylvania Trust. Themoderator interface has a moderator identification field 404 for thedisplay of the moderator's identification and an interactive programidentifier field 406 for identification of the interactive program beingproduced by the moderator.

[0079] In one embodiment of a moderator server in accordance with thepresent invention, the moderator server is operated in an applicationservice provider (ASP) mode. In this mode, the moderator server is usedto create a “private label” interactive program creation system. In thismode, the moderator server provides services that an operator can embedinto another system such that a viewer perceives the interactive programcreation system as being owned by individual operators. In someinstances an indica of source, such as a “powered by” notice, isincluded in the interactive program creation system.

[0080] The moderator's interface is broken up into several operationalsections. A “stage interaction” section 410 displays the moderator'sdirect interaction with a virtual guest on a virtual stage. The stageinteraction section includes a plurality of fields for display ofvirtual guests' previous questions as exemplified by previous questionfield 412. For each answered virtual guest question, a moderatorresponse field, as exemplified by moderator response field 414, displaysthe moderator's response to the virtual guest's previous question. Thestage interaction section further includes a current question field 416for display of a virtual guest's current question. A moderator uses amoderator text entry section 418 to enter responses to the currentvirtual guest question.

[0081] An audience interaction section 420 displays audience comments.The audience interaction comments are comments made by participants toother participants in the audience.

[0082] A moderator uses a status section 423 to monitor the progress ofthe interactive program. The moderator invites audience members to thevirtual stage to be virtual guests using an “invite to stage” selector426. The moderator can select a viewer to invite on to the virtual stageby using a pull down menu of viewer names and selecting a viewer toinvite. Once a viewer is invited to the virtual stage, the viewer'sinteractive messages are displayed in the stage interaction section andnot in the audience interaction section. The moderator can also excludea participant by selecting a participant from a “kick user out” pulldown menu 428. Once excluded, the moderator server removes the excludedparticipant's comment signals from the plurality of participant commentsignals edited by the moderator and used by the moderator server togenerate the interactive program. In this way, the moderator exercisesdirect control over the participants participating in the interactiveprogram.

[0083] In another interactive program creation system, the participant'sexchange video clips and files directly with each other in apeer-to-peer relationship. In this mode, the moderator server is notdirectly involved in the message exchanges occurring between audiencemembers interacting with each other.

[0084] The status section further includes an audience approval systemindicator 430 for indicating to the moderator how the audience feelsabout the progress of the show. Viewer responses are aggregated in ato-be-described process and displayed to the moderator as a coloredindicator and as a numerical value. A moderator uses the audience membercounter field 432 and pull down menu to determine the number andidentification of the viewers receiving the transmitted interactiveprogram. The status section further includes an elapsed time field 433for display of the elapsed time of the interactive program.

[0085] An audience question section 434 displays an audience question436 that the moderator may answer by selecting an answer question button438 or delete by selecting a delete question button 440. The moderatorcan get a new audience question by selecting the update button 442.

[0086] A polls section 444 includes a poll question display field 446for display of a current poll question and a poll results display field448 for display of viewer's responses to the poll. The moderator selectsa new poll button 450 to enter a new poll question whenever themoderator feels that a new poll should be created.

[0087]FIG. 34 is a participant question filtering moderator interface inaccordance with an exemplary embodiment of the present invention. Aparticipant question filtering interface 3400 includes a keyword entryfield 3402 for entry of keywords that the moderator would like to haveincluded by viewers in questions sent to the moderator. Questions withthe entered keywords will be given a higher relevance, and thuspriority, than questions without the keywords. The participant questionfiltering interface further includes an “exclude” entry field 3404 forwords which the moderator does not want to see in questions, such asexpletives or vulgarities. Any participant question having an excludedword will be deleted from a participant question queue managed by themoderator. The participant question filtering interface further includesa facility for setting a relevance threshold 3406. A moderator uses therelevance threshold setting facility to establish a threshold relevancevalue that a question should have before the question will be added tothe question queue.

[0088]FIG. 35 is an illustration of the operation of a participantquestion filtering facility in accordance with an exemplary embodimentof the present invention. A participant question 3500 is processed in aparticipant question filter 3502 and assigned a relevance value 3504. Amoderator uses the relevance value to determine which participantquestions the moderator would like to answer. If a participant question3506 has an excluded word, then the relevance of the participantquestion is assigned a value 3508 of 0 and deleted 3510 from aparticipant question queue. In one embodiment of a participant questionfilter in accordance with the present invention, the participantquestion is deleted if the participant question's relevance value doesnot exceed the threshold relevance value set by the moderator. Amoderator uses the participant question filtering facility in order toprocess large numbers of participant questions without becomingoverwhelmed and to filter out offensive participant questions. Thisallows the moderator to automatically moderate an interactive programhaving a large number of participants, thus facilitating scalabilityfrom few participants to many participants.

[0089]FIG. 36 is a process flow diagram of a participant question filterprocess in accordance with an embodiment of the present invention. Thefilter process receives (3600) a participant question 3601. The filterprocess attempts to match (3602) words in the participant question withthe moderator's excluded words 3603. If it is determined (3604) that anexcluded word is in the question, the relevance of the participantquestion is set (3606) to a value below the moderator's previouslydescribed threshold relevance value 3607.

[0090] If no excluded words are found in the participant question, thefilter process determines (3608) the relevance of the participantquestion by matching the moderator's keywords 3609 to the words in theparticipant question. If it is determined (3610) that the relevance ofthe participant question exceeds the threshold relevance value, then theparticipant question is added (3612) to a participant question queue3614.

[0091] In an embodiment of a filtering process in accordance with thepresent invention, keywords and excluded words are matched to theparticipant question using approximate string matching techniques inorder to determine the relevance value of a participant questionincluding misspelled keywords or excluded words.

[0092]FIG. 5 is a screen capture of a viewer interface used to view andinteract with an interactive program in accordance with an exemplaryembodiment of the present invention. The viewer interface 500 includesan interactive program identifier field 502 for display of the name ofthe interactive program being viewed by the viewer. A content displaysection 504 is included for display of a content portion of theinteractive program. The content of an interactive program may betext-based, audio-based, or video-based in any combination dependent onthe capabilities and desires of the moderator. An audience interactivemessage section 506 is included for display of audience interactivemessages that the audience is exchanging amongst themselves. Aninteractive message entry field 508 is used by the viewer to enterinteractive messages for display in the audience interactive messagesection and to interact with the moderator when the moderator invitesthe viewer onto the virtual stage.

[0093] A poll section 510 displays a poll question 511 asked by themoderator of the viewers. The poll section includes a plurality ofresponse buttons, exemplified by response buttons 512 and 514,selectable by the viewer to indicate the viewer's response to the poll.The viewer selects an answer to the poll question by selecting one ofthe response buttons and then selects the “Vote!” button 516 to registerthe viewer's poll answer with the moderator server. The viewer interfacefurther includes sections for banner advertising 518 and for placementof a trademark or service mark 520 to identify the operator of themoderator server. By allowing banner adds, the moderator server allows amoderator to collect revenue from t-commerce interactions with themoderator's hosted interactive program.

[0094] In another embodiment of an interactive program creation systemin accordance with the present invention, a poll is created using aplurality of participant questions for selection by participants. Theparticipant question from the plurality of participant questionsreceiving the most participant selections is selected for submission tothe moderator.

[0095] Referring again to FIG. 4, a current audience approval systemrating field 430 is provided for the display of viewer's rating of aninteractive program. Referring now to FIG. 6, a diagram depicting aprocess for receiving viewer reactions to the interactive program andcalculating an audience approval system rating for an interactiveprogram in accordance with an exemplary embodiment of the presentinvention is shown. A moderator 100 generates an interactive program andtransmits the interactive program to an audience 102 as previouslydescribed. The audience includes a plurality of viewers, as exemplifiedby viewers 600, 602 and 603. Each viewer may have a different opinion ofthe quality of the interactive program; therefore, each viewer isprovided with an individual audience approval system button asexemplified by audience approval system buttons 606, 608, and 610. Eachviewer selects an audience approval system rating button correspondingto the viewer's subjective rating of the interactive program. Theselection of an audience approval system button transmits acorresponding audience approval system signal to the moderator server(not shown) thus creating a plurality of audience approval systemsignals for evaluation by the moderator server. The moderator serverreceives the plurality of audience approval system signals and uses themto generate a single audience approval system rating signal andtransmits the audience approval system rating signal for display on themoderator's interface (not shown).

[0096] In an audience approval system in accordance with an exemplaryembodiment of the present invention, an audience approval system signalcan take on three states, 612, 614, and 616, with each staterepresenting a viewer's subjective opinion of the interactive program.In this embodiment, the three states are mapped to the correspondingnumeric values of “100”, “50”, and “0”, with “100” representing aviewer's complete satisfaction with the interactive program, “50”representing the viewer's partial satisfaction with the interactiveprogram, and “0” representing the viewer's complete dissatisfaction withthe interactive program. Each of the plurality of audience approvalsystem signals are mapped to one of these numeric values. These numericvalues are used to generate an arithmetic mean representing the audienceapproval system rating of the interactive program. In the illustratedexample of FIG. 6, viewer 600 rates the interactive program at “100”,viewer 602 rates the interactive program at “50”, and viewer 604 ratesthe interactive program at “100”. These values are used by the moderatorserver to generate (618) an arithmetic mean 624 of the plurality ofmapped viewer's audience approval system signals. The arithmetic mean ispresented to the moderator as the audience approval system rating of themoderator's interactive program. In one audience approval system inaccordance with an exemplary embodiment of the present invention, theaudience approval system rating is mapped to a color, with the numericvalue of “100” being represented in green, the numeric value of “50”being represented in yellow, and the numeric value of “0” beingrepresented in red.

[0097]FIG. 7 is a use case diagram depicting ways in which a moderatormay interact with a system for creating an interactive programincorporating viewer interactions in accordance with an exemplaryembodiment of the present invention. A moderator 100 accesses the systemin order to create (702) an interactive program. In one system forcreating an interactive program incorporating viewer interactions inaccordance with an exemplary embodiment of the present invention, themoderator creates a talk show that is a periodically broadcastinteractive program. Creation of an interactive program may includeselecting a theme for the talk show, establishing a broadcast time, andcreating a brief description of the talk show. This interactive programinformation is stored in a moderator database 230 (FIG. 2). Themoderator database is used by a moderator server 210 (FIG. 2) togenerate a to-be-described programming guide.

[0098] The moderator also accesses the interactive program creationsystem to host (704) an interactive program. While the moderator ishosting an interactive program, the system provides facilities 706 foraudience management allowing the moderator to restrict access to aninteractive program. As previously described, the system providesfacilities for the moderator to block interactive messages from viewersin the audience. The system also provides a facility 708 for postingpolls during the interactive program. This allows a moderator to posequestions to the audience in order to receive and aggregate viewer'sopinions about various subjects during an interactive program aspreviously described. The system further includes facilities 710 foranswering questions presented by viewers to the moderator. As previouslydescribed, a moderator can receive questions from viewers and determinewhether or not to answer them. Additionally, the system provides aninvitation facility 712 for inviting viewers to participate in theinteractive program as a virtual guest as previously described.

[0099] The moderator may also access the interactive program creationsystem to perform (714) administrative tasks associated with moderatinga periodically presented interactive program. The interactive programcreation system provides facilities 718 for sending scheduling remindersto viewers about upcoming interactive programs. Such schedulingreminders may be transmitted to a viewer by email, to a viewer'spersonal pager, to a viewer's wireless phone, or to a viewer's personaldigital assistant. The interactive program creation system also includesfacilities 720 for a moderator to review metrics collected by the systemon a moderator's interactive program.

[0100]FIG. 8 is a use case diagram depicting ways in which a viewer mayinteract with a system for creating an interactive program incorporatingviewer interactions in accordance with an exemplary embodiment of thepresent invention. A user accesses the interactive program creationsystem in order to search for (802) interactive programs. Theinteractive program creation system includes facilities 804 forsearching the interactive program creation system for interactiveprograms on particular topics that the viewer may be interested in. Theinteractive program creation system also includes browsing facilities806 allowing the viewer to examine an interactive program creationsystem directory of interactive programs in a hierarchal manner.

[0101] The viewer may also access the interactive program creationsystem to view 816 and become part of an interactive program. Theinteractive program creation system includes facilities 817 allowing aviewer to interact with embedded advertising. The interactive programcreation system also includes facilities 818 allowing a moderator topoll viewers during an interactive program as previously described. Theinteractive program creation system also includes facilities 820allowing a viewer to ask questions of the moderator and virtual guestsas previously described. The interactive program creation system alsoincludes facilities 822 allowing a viewer to rate an interactive programas previously described.

[0102] The viewer may also access the interactive program creationsystem to personalize (808) the viewer's experience with the interactiveprogram creation system. The interactive program creation systemincludes facilities 810 for submitting suggestions by the interactiveprogram creation system of interactive programs the viewer may beinterested in based on viewer preferences as included in a viewerprofile and previously viewed interactive programs. The interactiveprogram creation system further includes facilities 812 for creation ofa list of favorite interactive programs used by moderators to sendscheduling reminders to the viewer about upcoming interactive programsas previously described. The interactive program creation system alsoincludes facilities 814 allowing a viewer to create and edit a viewerprofile including topics of interest to the viewer. In one embodiment ofan interactive program creation system in accordance with the presentinvention, viewer profiles are stored in data files on the viewerclient. In another embodiment of an interactive program creation systemin accordance with the present invention, viewer profiles are stored ona central server and downloaded as XML documents to the viewer client asneeded.

[0103]FIG. 9 is a Web site diagram of an interactive program creationsystem in accordance with an exemplary embodiment of the presentinvention. As previously described, in one interactive program creationsystem in accordance with an exemplary embodiment of the presentinvention, a moderator server hosts a Web site for accessing interactiveprograms by both moderators and viewers. A user, such as a moderator orviewer, accesses the Web site via a log-in page 900.

[0104]FIG. 29 is a screen capture of an interactive program creationsystem log-in interface in accordance with an exemplary embodiment ofthe present invention. A user selects a register button 2900 to registeras either a viewer or a moderator. If the user is registering as aviewer, the user obtains a viewer identifier and a viewer password. Ifthe user is registering as a moderator, the user obtains a moderatoridentifier and a moderator password. The identifiers and passwords areused by the user to access the interactive program creation system onfuture visits and can be stored in “cookies” on the client the user isusing to access the interactive program creation system.

[0105] A user selects a log-in button 2902 to access the interactiveprogram creation system as a viewer or selects a moderator log-in button2904 to access the interactive program creation system as a moderator.The interactive program creation system log-in interface furtherincludes an upcoming program guide section 2906 for display ofinteractive programs that are scheduled to be produced by theirmoderators in the next 24 hours. The listings in the upcoming programguide section include a previously described “mic” viewer rating 2908and a category link 2910 to a viewer interface where a viewer can findmore interactive programs similar to the listed interactive program.

[0106] Referring again to FIG. 9, if the user logs in as a viewer, theviewer is directed to a viewer home page 902. From the viewer home page,the viewer may access a registration process 904. Once registered, theviewer can access an edit profile process 906.

[0107]FIG. 10 is a screen capture of an edit profile viewer interface inaccordance with an exemplary embodiment of the present invention. Theedit profile viewer interface is used by a viewer to edit the viewer'spersonal information stored in the viewer's profile. The edit profileviewer interface includes a viewer identification field 1000 for displayof the viewer's identification and a password entry field for entry ofthe viewer's password. In operation, a user enters a new password intothe password entry field and selects a “Submit and Continue” button 1003to change the viewer's password. The viewer's identification andpassword are associated together in the user database 232 (FIG. 9) foruse by the viewer as the viewer accesses different facilities of theinteractive program creation system.

[0108] The edit profile viewer interface further includes personalinformation entry fields, such as a first name entry field 1004 and alast name entry field 1006. Alternatively, the viewer may enter ananonymous viewer name rather than the viewer's real name in order tohide the viewer's identity. In operation, a viewer enters their personalinformation and selects the “Submit and Continue” button to store theviewer's personal information in the viewer's database. The personalinformation is used by the interactive program creation system topersonalize the viewer's experience while using the interactive programcreation system.

[0109] The edit profile viewer interface further includes a viewerprofile entry field 1008. In operation, the viewer enters the viewer'sinterests into the viewer profile entry field. The entered viewerprofile is stored in the viewer database for use by the interactiveprogram creation system to make suggestions of interactive programs thatthe viewer may want to participate in. To make suggestions, the viewerprofile is queried and key terms are identified. For example, theillustrated viewer profile 1010 includes the key terms “sports”,“movies”, and “music”. The interactive program creation system comparesthese key terms to key terms included in the moderator database 230(FIG. 9) by moderators who have created interactive program profiles. Ifa match is found, the interactive program creation system suggests thematching interactive program to the viewer.

[0110] In an embodiment of an interactive program creation system inaccordance with the present invention, interactive programs aresuggested to the viewer in a “pay-for-placement” mode. For example, if aplurality of interactive programs match the viewer's profile, the firstinteractive program suggested to the viewer is the interactive programwhose moderator has paid the interactive program creation system'soperator the most for being placed first.

[0111] The edit profile viewer interface further includes a viewer emailaddress entry field 1012, viewer city 1016, viewer state 1018, viewerzipcode 1020, and viewer country 1022 entry fields. In operation, theviewer enters their email and address location and selects the “Submitand Continue” button to store the viewer address information in theviewer database. Moderators using the interactive program creationsystem can use the viewer address information to notify a viewer whenthe moderator's interactive program is to be broadcast. Additionally,the viewer may optionally select a “Include in Directory” button 1022 inorder to exclude the viewer's address information from view by themoderators.

[0112] The edit profile viewer interface further includes an interactiveprogram search entry field 1024. A viewer uses the search entry field toenter a search term used to search the moderator database forinteractive programs with terms matching the search term. The editprofile viewer interface further includes a category or hub selectionfield 1026. A viewer may select an individual category, such as “News”1027 to be taken to a hub process for accessing interactive programsrelated to the selected category.

[0113] The edit profile viewer interface further includes an advertisingsection for display of “click-through” style banner ads. A user selectsone of the banner ads to be transferred to an advertiser's or retailer'sWeb site. The edit profile viewer interface further includes a featuresection 1030 for display of links to featured hubs. By selecting afeatured hub link, a viewer can quickly access a hub process foraccessing interactive programs related to the selected feature category.

[0114]FIG. 11 is a screen capture of a hub viewer interface inaccordance with an exemplary embodiment of the present invention. Thescreen capture is of an exemplary “News” 1100 hub. Other hubs may becreated for other subjects such as “home improvement” and the like. Thehub includes links for accessing by the viewer, interactive programswhose themes are national news 1102, world news 1104, business news1106, sports news 1108, weather news 1110, and entertainment news 1112.In operation, a viewer selects one of the links to access a specializedprogram guide including links to interactive programs with a themecorresponding to the link title.

[0115] Referring again to FIG. 9, a viewer may access an interactiveprogram electronic program guide process 908. A viewer uses the programguide process to add upcoming interactive programs to a viewer'sinteractive program list that is stored in the viewer database 232.

[0116]FIG. 12 is a screen capture of a program guide viewer interface inaccordance with an exemplary embodiment of the present invention. Theprogram guide includes a plurality of listings for interactive programsavailable for viewing 1200. Each of the listings include a title andbrief description field 1201, a current subject field 1202, a time field1204, and a listing selection button 1206. In operation, a viewer readsthe listing title and brief description to determine if the viewer wantsto participate in the interactive program. The viewer reads the timefield to determine when the next interactive program will be available,and reads the current subject field to determine what the next subjectto be discussed during the interactive program will be. The viewer thenselects the listing selection button and the “Add Selected to My TalkShows” button 1208 to add the listing to a viewer's list of interactiveprograms that the viewer wants to participate in. The list is maintainedin the viewer's database 232 (FIG. 9).

[0117] The program guide viewer interface further includes aninteractive program rating 1210 display. The interactive program ratingis a viewer rating determined from viewer responses to the interactiveprogram. In a program guide in accordance with an exemplary embodimentof the present invention, the viewer rating is expressed in terms of“mics” (short for microphone). The greater the number of mics, thehigher the viewer rating of the interactive program. For example, themaximum number of mics an interactive program may receive is five micsfor a popular program. A minimally popular interactive program may onlyreceive only one mic.

[0118] The program guide viewer interface further includes a link to aninteractive program suggestion 1210 process. As previously described,the interactive program creation system uses a viewer's profile storedin the viewer database and interactive program descriptions stored inthe moderator database to suggest interactive programs that the viewermay be interested in.

[0119] In another program guide viewer interface in accordance with anembodiment of the present invention, the viewer may also access archivedprograms in an “on-demand” mode. In an on-demand mode, the program guideincludes previously broadcast and archived interactive programs.

[0120] Referring again to FIG. 9, a viewer may access the previouslydescribed search facilities 910 of the interactive program creationsystem from the program guide. Additionally, the program guide providesa link to an immediate program guide 912 for listing interactiveprograms that are scheduled to be broadcast within the next day. Aviewer may also access a browsing facility 914. Using the browsingfacility, a viewer can view a hierarchal list of interactive programsfrom which the viewer can select an interactive program to participatein.

[0121] The viewer may access a specific interactive program's home page916 in a variety of ways, such as: selecting a link to an interactiveprogram from the previously described search facility 910; immediateprogram guide 912; browsing facility 920; and suggestion facility 918.Additionally, included in a moderator database 230 is a schedule ofupcoming interactive program broadcasts. The schedule of upcominginteractive program broadcasts may be accessed by the viewer using anupcoming interactive program facility 920. From an interactive program'shome page, a viewer may join a previously described actual interactiveprogram 922. Each interactive program is hosted by a previouslydescribed moderator server 210.

[0122]FIG. 28 is a screen capture of an interactive program home viewerinterface in accordance with an exemplary embodiment of the presentinvention. An interactive program home viewer interface is generated bya moderator server using information entered by a moderator and storedin the moderator database. The interactive program home viewer interfaceincludes an identifier field 2800 for display of an interactiveprogram's identifier. An interactive program description field is usedto display a brief description of the interactive program as describedby the moderator.

[0123] The interactive program home viewer interface further includes aschedule section 2804 where the schedule of upcoming transmissions ofthe interactive program are listed. An upcoming listing 2805 includes areminder button 2806. In operation, a viewer selects the reminder buttonfor a listing and an entry is made by the interactive program creationsystem to the previously described viewer profile. The entry is used totransmit notifications to the viewer when the interactive program isabout to be transmitted.

[0124] The interactive program home viewer interface further includes apreference addition button 2808 that the viewer selects to have theinteractive program added to the previously described viewer's list ofinteractive program preferences. A contact button 2810 is provided foruse by a viewer in sending an email message to a moderator. A searchbutton 2812 is provided for the viewer to search for additionalinteractive programs that are related thematically to the interactiveprogram represented in the interactive program home viewer interface.

[0125] The interactive program creation system further includes afacility 926 for retrieving archived previously broadcast interactiveprograms for viewing. A viewer uses the archive facility to viewtranscripts and enhanced content of interactive programs that the viewermay have missed or wants to view again. In one facility for retrievingarchived interactive programs for viewing in accordance with anexemplary embodiment of the present invention, the archived interactiveprograms can be viewed on an “on-demand” or “pay-for-view” basis.

[0126] In another facility for retrieving interactive programs forviewing in accordance with an exemplary embodiment of the presentinvention, the archived interactive programs may be accessed forpresentation in conjunction with other content such as in a syndicationmode. For example, an archived interactive program whose theme wasdiscussion about a particular product can be linked to an advertisementfor that product on a separate Website. As another example, aninteractive program with a topical theme may be syndicated by a livenews Website.

[0127]FIG. 13 is a screen capture of an interactive program archiveviewer interface in accordance with an exemplary embodiment of thepresent invention. An archive viewer interface includes a plurality ofarchive listings of previously broadcast and archived interactiveprograms 1300 with each archive listing 1301 including a title field1302, a subject field 1304, and a date field 1306. In operation, aviewer reviews the plurality of archive listings and selects the archivelisting corresponding to an archived interactive program the viewerwants to view. After selecting the archive listing of the archivedinteractive program, the viewer views a replay of the archivedinteractive program corresponding to the archive listing. In aninteractive program archive viewer interface in accordance with anexemplary embodiment of the present invention, archived listings areorganized by themes, such as the illustrated “The Gardening Center” 1308that is an archive with a gardening theme. In other interactive programarchive viewer interfaces in accordance with an exemplary embodiment ofthe present invention, an entity, such as a corporation, sponsors thearchive as a form of advertising. For example, a brokerage may sponsoran archive with a financial theme or a hardware retailer may sponsor anarchive with a “do-it-yourself” theme.

[0128] Referring again to FIG. 9, the interactive program creationsystem further includes facilities 924 for a moderator to create aninteractive program. A moderator uses the facility to create aninteractive program by entering information about the interactiveprogram and the information is stored in the moderator database 230.

[0129]FIG. 14 is a screen capture of a moderator interface for aninteractive program authoring tool in accordance with an exemplaryembodiment of the present invention. The interactive program creationmoderator interface includes an interactive program identifier displayfield 1400 for displaying the interactive program's name. A moderatoruses an interactive program identifier entry field 1402 to enter thename of the interactive program. The interactive program creationmoderator interface further includes a description entry field 1404 forentry by the moderator of a brief description of the interactive programand a category/genre selection menu 1408 for selection by the moderatorof a category under which the interactive program will be placed. Theinteractive program creation moderator interface further includes a hostname entry field 1406 for entry of the moderator's name. The interactiveprogram creation moderator interface further includes a broadcastscheduling selection menu 1410, day selection buttons 1412, and a timeselection menu 1414 for selection of the broadcast time of theinteractive program. In operation, a moderator enters in an interactiveprogram name, interactive program description, and host name. Themoderator selects a category, a broadcast schedule, the days of the weekthe interactive program will be broadcast, the time the interactiveprogram will be broadcast, and selects a “Submit and Continue” button1418 to store the entered and selected interactive broadcast informationin the moderator database 230 (FIG. 9). The moderator can also select an“Include in Program Guide” button 1416 to include the interactiveprogram information in the previously described program guide.

[0130]FIG. 39 is a screen capture of an interactive program authoringwizard in accordance with an exemplary embodiment of the presentinvention. Within the interactive program authorizing tool is a “wizard”which allows a host/moderator to easily set up a new interactiveprogram. A “wizard” is a software tool that guides a user through theconfiguration of a software application. A wizard typically includes aset of selectable configuration templates for use by a user and a dialogthat guides the user through the configuration process. The interactiveprogram authoring wizard can operate as a stand-alone application andmay be used through a Web browser. The interactive program authoringwizard features beginner, intermediate, and expert levels and offers theease of use of other mass market authoring tools making it easy forpotential moderators to get started hosting their own interactiveprograms. During a setup process, the moderator selects from severalpreset genres allowing the moderator to quickly set the look and feel oftheir interactive programs. For example, these presets may includeformats for defining interactive programs such as a news and perspectiveprogram, sports program, business program, human interest program,do-it-yourself program, etc. The interactive program authoring tool 3900has a “genre/theme” link 3902 selectable by the moderator to bring up alist of themes 3904 that the moderator selects from. By selecting atheme, the moderator selects a configuration for the interactive programestablishing backgrounds, layouts, and interactive areas for aninteractive program. The moderator selects a theme and the selects a“submit and continue” button 3906 to configure the interactive programusing a themed interactive program template.

[0131] The interactive program creation moderator interface furtherincludes a link to a broadcast schedule editing facility 1418. Amoderator uses this link to access a more detailed interactive programscheduling entry facility. The interactive program creation moderatorinterface further includes a link to an add co-hosts facility 1420. Amoderator uses this link to access a facility for adding a co-host oradditional, but subordinate moderator, such as a side-kick, panel ofexperts, or special guest to the interactive program.

[0132] The interactive program creation moderator interface furtherincludes a link to a themes facility 1422. A moderator uses this link toaccess a facility for assigning the interactive program to a thematiccategory for easier classification of interactive programs for browsingby a viewer.

[0133] The interactive program creation moderator interface furtherincludes a link to a send reminders facility 1420. A moderator uses thislink to access a facility for transmitting reminders to viewers. Theinteractive program creation system uses the previously describedviewer's lists of interactive programs to send notifications to each ofthe viewers who have added the moderator's interactive program to theirlist of interactive programs. Reminders may be sent by variouscommunication links such as email, voice mail, and pager as agreed to bythe viewer.

[0134]FIG. 32 is a process flow diagram of a viewer notification processin accordance with an exemplary embodiment of the present invention. Amoderator server receives (3200) an interactive program identifier froma moderator for which the moderator would like to transmit reminders toviewers. The moderator server reads (3201) viewer preferences frompreviously described viewer profiles 3202. Included in a viewer'sprofile is a list of interactive programs for which the viewer wants tobe reminded of upcoming transmissions. If the moderator serverdetermines (3204) that a viewer wants to receive notifications for theidentified interactive program, the moderator server generates (3206) aviewer notification 3208 and transmits the viewer notification to theviewer. The moderator server then determines (3210) if all viewers havebeen processed. If not, the moderator server continues searching forviewers wishing to receive notifications. The moderator server continuesprocessing until all viewers wishing to receive notifications of thetransmission of the interactive program have been notified.

[0135] In one viewer notification process in accordance with anexemplary embodiment of the present invention, a viewer notification istransmitted as an email message to the viewer. The viewer may retrievethe email message by any suitable device or client such as a personaldigital assistant, personal computer, etc. In another viewernotification process in accordance with an exemplary embodiment of thepresent invention, the viewer notification is in the form of an audioreminder transmitted to a viewer's voice mail system or directly to aviewer's telephone. In another viewer notification process in accordancewith an exemplary embodiment of the present invention, the viewernotification is in the form of an instant message that is transmitted toa viewer if the viewer is currently on a system that is accessible tothe moderator server.

[0136] Referring again to FIG. 14, the interactive program creationmoderator interface further includes a link to a traffic report facility1426. A moderator uses this link to access a facility for generatingreports describing the user interactions with an interactive programbroadcast by the moderator.

[0137]FIG. 15 is a screen capture of a moderator interface for aninteractive program reporting tool in accordance with an exemplaryembodiment of the present invention. In general, a moderator uses aninteractive program reporting tool to specify reports generated usingdata recorded about viewer interaction with an interactive programbroadcast and stored in the moderator database as previously described.Additionally, the interactive program reporting tool is used by amoderator to generate a report regarding viewer access of archivedinteractive programs so that the moderator can determine the popularityof old content that was previously broadcast. The moderator can specifyreports to analyze the data in a variety of ways using a variety of datamining techniques to yield customizable, comprehensive, and flexiblereports. Additionally, viewer identifications associated with the viewerinteraction data can be combined with the previously described viewerprofile data to generate reports on the demographics and geographiclocations of the viewers participating in an interactive program. Inthis mode, a viewer's privacy may be protected by aggregating the viewerdata or stripping viewer identifiers from any data viewable by amoderator. The reporting tool moderator interface includes a selectgroup report menu 1500 for selecting a specific set of reports to view.

[0138] The reporting tool moderator interface further includes entryfields for selection of types and formats of viewer interaction reports.Each of these sections is typified by a selection button 1504 and aformat selection pull-down menu 1506. A moderator selects a selectionbutton to include the specific type of report in a viewer interactionreport and uses the format pull-down menu to select the format of thespecific report. The types of reports the moderator can include in aviewer interaction report include a peak usage report 1504. A peak usagereport is a report indicating the peak usage of the interactive programby the viewers.

[0139] A moderator can select a total traffic report 1508. A totaltraffic report is a report depicting the total number of viewers andviewer interactions with the interactive program over the broadcast timeof the interactive program.

[0140] A moderator can select a breakdown by user report 1512. Abreakdown by user report is reported depicting the interactions ofsingle viewers.

[0141] A moderator can select a breakdown by demographic report 1516. Abreakdown by demographic report is a report depicting viewerinteractions by viewers fitting certain demographic descriptions.

[0142] A moderator can select a breakdown by geography report 1520. Abreakdown by geography report is a report depicting where viewersparticipating in an interactive program are physically located.

[0143] A moderator can select a visitor path report 1524. A visitor pathreport is a report depicting where viewer's are located on a network.

[0144] A moderator can select a referral report 1528. A referral reportis a report depicting from which locations viewers have been referredfrom such as an external Web site, etc.

[0145] A moderator can select a polling data report 1534. A polling datareport is a report depicting the results of polls taken by a moderatorduring an interactive program.

[0146] A moderator can select a “clicks by a viewer” report 1538. Aclicks by a viewer report is a report depicting how many selectionsviewers make during an interactive program.

[0147] A moderator can select a feature utilization report 1542. Afeature utilization report is a report depicting how many differentfeatures viewers are using during an interactive program.

[0148] A moderator can select a chat or interactive messaging report1538. A chat or interactive messaging report is a report depicting howmany interactive messages are being sent between the audience membersduring an interactive program.

[0149]FIG. 16 is a screen capture of a moderator interface for a viewerinteraction report generated in accordance with an exemplary embodimentof the present invention. The report moderator interface includes areport selection pull down menu 1600 for immediately viewing sections ofthe report without having to scroll through each of the reports.

[0150] Graph 1610 is a graph of click-through activity versus time foran interactive program. During an interactive program, individualinstances of viewers selecting advertising banners is recorded in thepreviously described moderator database associated with the time of theselection of the advertising banner. An interactive program creationsystem can use the recorded advertising selection events and theirassociated times to generate the click-through activity versus timegraph.

[0151] Graph 1612 is a geographically based graph depicting thegeographic location of viewers participating in an interactive program.The viewers participating in an interactive program are recorded in thepreviously described moderator database. Each recorded viewer'sgeographic location can be determined from the previously describedviewer's profile or by mapping the viewer's IP address to a specificgeographic location. An interactive program creation system can use therecorded viewer identifications and viewer geographic locations togenerate a graphic illustrating the geographic locations of the viewers.

[0152] The viewer interactivity reports are used by a moderator todetermine the effectiveness of an interactive program. For example, themoderator can use the demographic charts to determine if the interactiveprogram is reaching an audience with the demographic profile desired bythe moderator. As a further example, the moderator can determine theeffectiveness of various portions of an interactive program by analyzingparticipant interaction with the interactive program over time. Spikesin interactive message transmissions from the participants may indicateportions of the interactive program that the participants find mostengaging.

[0153]FIG. 17 is a screen capture of a moderator interface for anadvertising report generated in accordance with an exemplary embodimentof the present invention. A revenue generation graphic 1702 illustratesthe relative amounts of revenue generated from the viewers participatingin an interactive program. As the viewers participate in the interactiveprograms, the viewers' interactions with links and advertising bannersincluded in the interactive program are recorded in the moderatordatabase as previously described. An interactive program creation systemcan use the recorded viewer interactions to generate a graphic showingthe relative contributions to total revenue by each of several possibleviewer interaction modes. For example, in the illustrated graph,comparisons are made for selection of links 1704, selection of embeddedads 1706, selection of banner ads 1708, and selection of other types ofads 1710 and 1712, as a percentage of total revenue.

[0154] An advertising geographical graphic 1716 indicates the geographicviewer locations of viewers participating with the interactive program.As the viewers participate in the interactive programs, the viewers'interactions with links and advertising banners included in theinteractive program are recorded in the moderator database as previouslydescribed. Additionally, a viewer identification for each viewerinteraction is stored in the moderator database. Each viewer'sgeographic location can be determined from the previously describedviewer's profile or by mapping the viewer's IP address to a specificgeographic location. An interactive program creation system can use therecorded viewer interactions and viewer identifications to generate agraphic illustrating the geographic locations of advertising revenuegeneration. An interactive program creation system can use viewerinteraction data, viewer identification data, and viewer profile data togenerate a revenue by age graphic 1718 or a revenue by demographicdescription graphic 1720.

[0155]FIG. 31 is a process flow diagram of an interactive program reportgeneration process in accordance with an exemplary embodiment of thepresent invention. A moderator server determines (3100) a set of viewerdemographics for an interactive program's viewing audience by using theinteractive program's history 3102 along with a set of viewer profiles3104. For each viewer that participated in the interactive program whenthe interactive program was transmitted, the moderator server extractsthe individual viewer's stored viewer profile. The moderator serveraggregates the individual viewer profiles to generate viewerdemographics 3106 for the interactive program transmission. Themoderator server generates (3108) a graphical representation 3110 of theviewer demographics, for example a bar graph, and adds 3112 thegraphical representation to a report 3114. The moderator serverdetermines (3116) if all requested graphics have been generated. If not,the moderator selects the next graphic to generate and repeats theprocess thereby adding a new graphic to the report. Once all of thegraphics have been added to the report, the moderator server transmits(3118) the report to the moderator requesting the report.

[0156]FIG. 18 is a database entity relation diagram for a moderatordatabase in accordance with an exemplary embodiment of the presentinvention. The database entity relation diagram is an expression of metadata describing how the data in the viewer and moderator databases arerelated. The moderator database includes information used to organizeinteractive programs created and administered by moderators andhistories of interactive programs including viewer interactions with theinteractive programs. Interactive programs are organized withincategories as previously described. Category information is used tocreate hubs of viewer interactions. A super category 1800 is associatedwith many categories 1802 but each category is only associated with onesuper category. A category or hub is associated with many interactivemessage rooms 1804 which is in turn associated with many interactivemessage lines. A viewer profile is associated with many interactivemessage lines. In operation, a plurality of viewers select a categoryand enter an interactive message room associated with the category.Viewer submissions within an interactive message room are used togenerate individual interactive message lines that are viewed by theviewers as they exchange interactive messages.

[0157] A category is associated with a plurality of polls 1810 with eachpoll being associated with a plurality of poll responses 1812. A viewerprofile is associated with a plurality of poll responses. In operation,viewers respond to a poll associated with a specific category and theviewers' responses are recorded in the moderator database for futureanalysis.

[0158] A category is associated with a plurality of interactive programs1814 and each interactive program is associated with a plurality ofinteractive program broadcasts or instances. Each interactive programbroadcast is associated with a plurality of reminders 1818 with eachreminder being associated with a single user profile. In operation, amoderator determines an interactive programming schedule of interactiveprogram broadcasts and generates reminders that are transmitted toviewers who have expressed an interest in being reminded of theinteractive program's broadcasts.

[0159] A category is associated with a plurality of message boards 1820with each message board being associated with a plurality of messageboard threads 1822. Each message board thread is associated with aplurality of message board messages 1824 with each message board messagebeing associated with a single viewer profile. A viewer profile may beassociated with a plurality of message board messages. In operation,viewers leave messages grouped into message board threads on messageboards maintained by moderators. The messages may be for the moderatorsor may be for other viewers.

[0160] Keywords 1826 are stored in the moderator database so thatviewers can search for categories 1802 and links 1832 associated withthe categories. Additionally, all user inputs can be indexed and taggedto become interactive triggers that are linked to interactive programsserved by the moderator server. Category keywords 1828 are associatedwith a plurality of categories. In operation, a viewer enters a categorykeyword into a previously described search facility and a set ofcategories for use by the viewer are generated that are associated withthe category keyword. Link keywords 1830 associated with links tooff-site resources are also stored in the moderator database. Inoperation, a viewer enters a link keyword in the previously describedsearch facility and a set of links associated with the link keyword isgenerated for use by the viewer.

[0161] Viewer profiles are associated with a plurality of viewerhistories 1834. In operation, a viewer history is recorded of a viewer'sinteractions when accessing an interactive program creation system whilenot actually participating in an interactive program.

[0162]FIG. 19 is a screen capture of a viewer interface for anon-moderator based interactive program associated with a broadcast inaccordance with an exemplary embodiment of the present invention. Aspreviously described, an interactive program can include broadcastcontent from a source not associated with the interactive program, suchas a broadcast from a commercial broadcaster. In this case, aninteractive program includes participant commentary but may not includemoderator commentary. The viewer interface for a non-moderatedinteractive program includes a broadcast content section 1900 fordisplay of non-interactive broadcast content. The viewer interface for anon-moderated interactive program further includes a viewer interactivemessage section 1902 for display of viewer interactive messagestransmitted to a moderator server (not shown). The viewer interface fora non-moderated interactive program includes a viewer interactivemessage entry field for entry of viewer interactive messages. Inoperation, a viewer views the non-interactive broadcast content, entersinteractive messages into the interactive message entry field andselects the “enter” button 1906 to submit the interactive message to themoderator server. The viewer's entered interactive message is thencombined with other viewers' interactive messages to generate aninteractive message display that is shown in the interactive messagedisplay section.

[0163] In an interactive program creation system in accordance with anembodiment of the present invention, the broadcast program issynchronized to the interactive program using synchronization signalsincluded in the interactive program signals. In this way, an interactiveprogram may be synchronized with an external broadcast.

[0164]FIG. 20 is a screen capture of a viewer interface for a broadcastprogram guide in accordance with an exemplary embodiment of the presentinvention. The broadcast program guide viewer interface includes a dateselection/display field 2000 and a time selection/display field 2002. Aviewer uses the date selection/display field and time selection/displayfield to select and display a date and time for which the viewer wantsto view scheduled broadcasts. Scheduled broadcasts for the selected dateand time are shown in a listings section 2003. The listings sectionincludes a broadcast channel column for display of the broadcast channelof a particular program, and a program information column 2005 fordisplay of information about a scheduled program.

[0165] A current broadcast content section 2006 includes a display ofbroadcast content that is currently being broadcast on a selectedbroadcast channel. Information about the broadcast content is shown in abroadcast content information section 2007 formatted as a televisedprogramming guide. The broadcast information includes a broadcastchannel, a title, a broadcast time, and a description, if available, ofthe broadcast content. If a microphone indicator 2008 is shown next to alisting of a scheduled broadcast 2010, this indicates that the scheduledbroadcast is available as an interactive program including broadcastcontent as previously described. In operation, a viewer can select aninteractive program that is currently being broadcast and view thebroadcast content in the current broadcast content section. A viewerselects a “switch to full screen” button 2012 to participate in acurrently broadcast interactive program corresponding to the currentlybroadcast content displayed in the current broadcast content section.

[0166]FIG. 21 is a screen capture of a viewer interface for aninteractive program incorporating Web content in accordance with anexemplary embodiment of the present invention. A viewer initiatesparticipation with an interactive program displayed in an interactiveprogram reduced screen viewer interface 2100. The reduced screen viewerinterface includes a link 2101 to a Web page 2102 that includesadditional information about the interactive program's theme. Forexample, the link may be to an eCommerce Web site where a viewer maypurchase a book that is currently being discussed by a moderator andviewers participating in the interactive program. The reduced screenviewer interface includes a stage interaction section 2104 for displayof interactive messages exchanged between a moderator and a virtualguest or invited viewer as previously described. The reduced screenviewer interface further includes an audience interactive messagedisplay section 2106 for display of interactive messages exchangedbetween viewers as previously described. The reduced screen viewerinterface further includes an interactive message entry field 2108. Inoperation, a viewer enters an interactive message into the interactivemessage entry field and selects the “Enter” button 2110 to transmit theinteractive message to a moderator server (not shown) for inclusion inthe stage or audience interaction display section.

[0167] The reduced screen viewer interface further includes interactiveprogram rating buttons 2112 for viewer rating of an interactive programas previously described. In operation, a viewer selects one of theinteractive program rating buttons to indicate the viewer's satisfactionwith the interactive program. Viewer ratings from a plurality of viewersare aggregated together and displayed to the moderator as previouslydescribed.

[0168] A moderator uses a reduced screen viewer interface to create acontextual commerce application using an interactive program. Themoderator uses the interactive program to build a community from anaudience attracted to the subject matter of the interactive program,such as a product line or a series of books. The moderator then linksthe reduced screen viewer interface to a location where a viewer canmake a purchase of a product or item related to the subject matter of aninteractive program. In addition, archived interactive programs can beaccessed in an “on-demand” mode to be linked to an e-commerce Website inorder to have a continually available sales tool such as an“infomercial” or testimonial for a product or item.

[0169]FIG. 22 is a screen capture of a viewer interface for aninteractive program incorporating Web content in accordance with anotherexemplary embodiment of the present invention. A viewer initiatesinteraction with a previously described reduced screen viewer interface2204 for an interactive program by selecting a link 2202 included in aWeb page 2200. For example, a seller offering items on an auction sitemay be a moderator for an interactive program in order to discuss theoffered items with participating viewers. In this case, the sellerincludes a link to an interactive program for which the seller serves asa moderator.

[0170]FIG. 23 is a screen capture of a viewer interface for a facilityto manage a viewer's personal favorite interactive programs inaccordance with an exemplary embodiment of the present invention. Thepersonal favorite viewer interface includes a listings display section2300 for display of one or more listings 2301. Each listing includes aviewer rating field 2302 for display of previously described viewerratings of an interactive program displayed in the listing. The listingfurther includes a name field 2304 for display of an interactiveprogram's name, a next broadcast field 2306 for display of theinteractive program's next broadcast, a reminder button 2308, and adelete button. In operation, a viewer selects the reminder button toreceive previously described reminders from a listed interactiveprogram's moderator and selects an “update settings” button to transmitthe reminder request to a moderator server (not shown). To delete aninteractive program from the viewer's personal favorite list, the viewerselects the delete button and selects the update settings button todelete a listed interactive program to delete the listed interactiveprogram.

[0171]FIG. 24 is a screen capture of a viewer interface for a facilityto suggest programs to a viewer in accordance with an exemplaryembodiment of the present invention. The suggested program viewerinterface includes a suggested interactive program listing section 2400.A suggested interactive program listing includes a field for display ofa previously described viewer rating 2404, a field for display of aninteractive program's name and brief description 2406, a next broadcastfield 2408 for display of an interactive program's next display time,and an “add” button for adding a listed interactive program to theviewer's list of favorite interactive programs. In operation, a viewerselects the add button for a listed interactive program and selects an“Add Selected to My Interactive Programs” button 2412 to add a listedinteractive program to the viewer's previously described favoriteinteractive program.

[0172]FIG. 25 is a deployment diagram of a process for conversion anddeliverly of interactive programs via an interactive television networkin accordance with an exemplary embodiment of the present invention. Amoderator server 210 receives participant comments and moderator contentfrom an audience and a moderator and generates interactive program fortransmission over the Internet 202 to a viewer client 212 as previouslydescribed.

[0173] The same interactive program can be transmitted over aconventional interactive television (iTV) network as well. The moderatorserver transmits the interactive program to an iTV server 2500 and theiTV server generates iTV content 2500 from the interactive program. TheiTV content is transmitted via communications network 2502 to an iTVsignal processor. The iTV signal processor receives the iTV content anduses the iTV content to generate iTV signals for transmission to an iTVenabled television 2508 for viewing by a viewer. In this mode, triggersare generated from the interactive program signals and the viewer usesthe triggers to participate in the interactive program, such as throughthe use of tags associated with the triggers included in the iTVsignals' Vertical Blanking Interval (VBI), and the viewer's comments aretransmitted via a back channel 2510 to the moderator server. In thisway, a viewer can use either an iTV enabled television or a viewerclient to participate in an interactive program as previously described.

[0174]FIG. 33 is a deployment diagram of a locally hosted moderatorserver in accordance with an exemplary embodiment of the presentinvention. A moderator server 210 implementing the previously describedinteractive program creation facilities is hosted by a local host 3300.The local host may also host the previously described moderator client204. In this embodiment, the locally hosted moderator server is operablycoupled to a plurality of previously described viewer clients, asexemplified by viewer clients 214 a and 214 a, via previously describedcommunications network 202. The moderator server is further coupled toan interactive program server 3302 via the communications network. Theinteractive program server is operably coupled to the previouslydescribed moderator database 230 and viewer database 232.

[0175] In operation, the locally hosted moderator server is used by amoderator to create an interactive program for transmission to theviewer clients and moderator client as previously described. In thisembodiment, viewer information is stored in the viewer database,moderator information is stored in the moderator database and themoderator server and the viewer clients access the information via theinteractive program server. The local host may be any type ofprogrammable device capable of bidirectional communication with otherdevices over a communications network. For example, the local host canbe a game console, or a personal computer, or a set-top-box, etc.

[0176]FIG. 26 is a hardware architecture diagram of a data processingsystem suitable for use as a moderator server host in accordance with anexemplary embodiment of the present invention. A microprocessor 2600,including a Central Processing Unit (CPU) 2610, a memory cache 2620, anda bus interface 2630, is operatively coupled via a system bus 2635 to amain memory 2640 and an I/O control unit 2645. The I/O interface controlunit is operatively coupled via an I/O local bus 2650 to a disk storagecontroller 2695, and a network communications controller 2680. Acommunications device 2696 is operatively coupled to the networkcommunications controller and is adapted to allow software objectshosted by the general purpose computer to communicate via a network withother software objects.

[0177] The disk storage controller is operatively coupled to a diskstorage device 2655. Computer program instructions 2697 implementing apreviously described moderator server are stored on the disk storagedevice until the microprocessor retrieves the computer programinstructions and stores them in the main memory. The microprocessor thenexecutes the computer program instructions stored in the main memory toimplement the moderator server.

[0178] Although this invention has been described in certain specificembodiments, many additional modifications and variations would beapparent to those skilled in the art. It is therefore to be understoodthat this invention may be practiced otherwise than as specificallydescribed. Thus, the present embodiments of the invention should beconsidered in all respects as illustrative and not restrictive, thescope of the invention to be determined by any claims supportable bythis application and the claims' equivalents.

What is claimed is:
 1. A method for creating and transmitting aninteractive program over a communications network, comprising: operablycoupling a moderator server to the communications network; operablycoupling a moderator client to the moderator server via thecommunications network; operably coupling a plurality of viewer clientsto the moderator server via the communications network; receivingparticipant comment signals by the moderator server via thecommunications network from the plurality of viewer clients;transmitting by the moderator server via the communications network tothe moderator client the participant comment signals; receiving editedparticipant comment signals and moderator signals by the moderatorserver via the communications network from the moderator client;generating interactive program signals by the moderator server using theedited participant comment signals and the moderator signals; andtransmitting by the moderator server via the communications network tothe plurality of viewer clients the interactive program signals.
 2. Themethod of claim 1, wherein generating interactive program signalsfurther includes: receiving content signals by the moderator server froma content server; and generating by the moderator server the interactiveprogram signals using the content signals, edited participant commentsignals, and the moderator signals.
 3. The method of claim 1, furthercomprising: receiving content signals by the moderator server from acontent server; and transmitting by the moderator server via thecommunications network to the viewer clients the content signals.
 4. Themethod of claim 1 wherein the communications network is a virtualprivate network.
 5. The method of claim 1 wherein the participantcomment signals further include an interactive program rating signal. 6.The method of claim 1 wherein the moderator signals further include aviewer exclusion signal corresponding to a specific viewer client fromthe plurality of viewer clients and generating by the moderator serverthe interactive program signals further includes using the viewerexclusion signal to exclude participant comments received from thespecific viewer client.
 7. The method of claim 1 wherein the moderatorsignals further include a viewer invitation signal corresponding to aspecific viewer client from the plurality of viewer clients, andgenerating by the moderator server the interactive program signalsfurther includes using the viewer invitation signal.
 8. A method forcreating and transmitting interactive programming content over a widearea network, comprising: operably coupling a moderator server to thewide area network; operably coupling a content server to the moderatorserver; operably coupling a moderator Web browser to the moderatorserver via the wide area network; operably coupling a plurality ofviewer Web browsers to the moderator server via the wide area network;receiving by the moderator server from the content server a first set ofcontent signals; receiving by the moderator server via the wide areanetwork from the moderator Web browser a first set of moderatorcomments; generating by the moderator server a first interactiveelectronic document using the first set of content signals and the firstset of moderator comments; transmitting by the moderator server via thewide area network to the plurality of viewer Web browsers the firstinteractive electronic document; receiving by the moderator server viathe wide area network from the plurality of viewer Web browsers aplurality of viewer interactive messages responsive to the firstinteractive electronic document; transmitting by the moderator servervia the wide area network to the moderator Web browser the plurality ofviewer interactive messages; receiving by the moderator server via thewide area network from the moderator Web browser edited viewerinteractive messages and a second set of moderator comments; receivingby the moderator server from the content server a second set of contentsignals; generating by the moderator server a second interactiveelectronic document using the edited viewer interactive messages and thesecond set of moderator comments; and transmitting by the moderatorserver via the wide area network to a plurality of viewer Web browsersthe second interactive electronic document.
 9. A method forparticipating in an interactive program over a communications network,comprising: operably coupling a viewer client to a moderator server viathe communications network; transmitting participant comment signals bythe viewer client via the communications network to the moderatorserver; and receiving by the viewer client via the communicationsnetwork from the moderator server viewer interactive program signals,the viewer interactive program signals generated by the moderator serverusing edited participant comment signals and moderator signals, theedited participant comment signals and moderator signals received by themoderator server from a moderator client via the communications network.10. A method for creating and transmitting an interactive program over acommunications network, comprising: operably coupling a moderator clientto a moderator server via the communications network; receiving by themoderator client via the communications network from the moderatorserver participant comment signals, the participant comment signalstransmitted by a plurality of viewer clients to the moderator server viathe communications network; generating by the moderator client moderatorcomment signals and edited participant comment signals using theparticipant comment signals; transmitting by the moderator client to themoderator server via the communications network the moderator signalsand the edited participant comment signals; and receiving by themoderator client from the moderator server via the communicationsnetwork moderator interactive program signals, the moderator interactiveprogram signals generated by the moderator server using the editedparticipant comment signals and the moderator signals.
 11. A dataprocessing system adapted for creating and transmitting an interactiveprogram to a plurality of viewer clients using a moderator client, theplurality of viewer clients and the moderator client operably coupled tothe data processing system by a communications network, the dataprocessing system comprising: a processor; and a memory operably coupledto the processor and having program instructions stored therein, theprocessor being operable to execute the program instructions, theprogram instructions including: receiving participant comment signalsfrom the plurality of viewer clients via the communications network;transmitting the participant comment signals to the moderator client viathe communications network; receiving edited participant comment signalsand moderator signals from the moderator client via the communicationsnetwork; generating interactive program signals using the editedparticipant comment signals and the moderator signals; and transmittingthe interactive program signals to the plurality of viewer clients viathe communications network.
 12. The data processing system of claim 11,wherein the program instructions for generating the interactive programsignals further include: receiving content signals from a contentserver; and generating the interactive program signals using the contentsignals, edited participant comment signals, and the moderator signals.13. The data processing system of claim 11, the program instructionsfurther including: receiving content signals from a content server; andtransmitting the content signals via the communications network to theviewer clients.
 14. The data processing system of claim 11 wherein thecommunications network is a virtual private network.
 15. The dataprocessing system of claim 11 wherein the participant comment signalsfurther include an interactive program rating signal.
 16. The dataprocessing system of claim 11 wherein the moderator signals furtherinclude a viewer exclusion signal corresponding to a specific viewerclient from the plurality of viewer clients and the program instructionsfor generating the interactive program signals further include using theviewer exclusion signal to exclude participant comments received fromthe specific viewer client.
 17. The data processing system of claim 11wherein the moderator signals further include a viewer invitation signalcorresponding to a specific viewer client from the plurality of viewerclients, and the program instructions for generating the interactiveprogram signals further include using the viewer invitation signal. 18.A moderator server for creating and transmitting an interactive programto a plurality of viewer Web browsers using a moderator Web browser, theplurality of viewer Web browsers and the moderator Web browser operablycoupled to the moderator server via a wide area network, the moderatorserver comprising: a processor; and a memory operably coupled to theprocessor and having program instructions stored therein, the processorbeing operable to execute the program instructions, the programinstructions including: receiving by the moderator server from thecontent server a first set of content signals; receiving by themoderator server via the wide area network from the moderator Webbrowser a first set of moderator comments; generating by the moderatorserver a first interactive electronic document using the first set ofcontent signals and the first set of moderator comments; transmitting bythe moderator server via the wide area network to the plurality ofviewer Web browsers the first interactive electronic document; receivingby the moderator server via the wide area network from the plurality ofviewer Web browsers a plurality of viewer interactive messagesresponsive to the first interactive electronic document; transmitting bythe moderator server via the wide area network to the moderator Webbrowser the plurality of viewer interactive messages; receiving by themoderator server via the wide area network from the moderator Webbrowser edited viewer interactive messages and a second set of moderatorcomments; receiving by the moderator server from the content server asecond set of content signals; generating by the moderator server asecond interactive electronic document using the edited viewerinteractive messages and the second set of moderator comments; andtransmitting by the moderator server via the wide area network to aplurality of viewer Web browsers the second interactive electronicdocument.
 19. A data processing system adapted for participating in aninteractive program over a communications network, the data processingsystem comprising: a processor; and a memory operably coupled to theprocessor and having program instructions stored therein, the processorbeing operable to execute the program instructions, the programinstructions including: transmitting participant comment signals via thecommunications network to a moderator server; and receiving viewerinteractive program signals via the communications network from themoderator server, the viewer interactive program signals generated bythe moderator server using edited participant comment signals andmoderator signals, the edited participant comment signals and moderatorsignals received by the moderator server from a moderator client via thecommunications network.
 20. A data processing system adapted forcreating and transmitting an interactive program to a plurality ofviewer clients via a communications network, the data processing systemcomprising: a processor; and a memory operably coupled to the processorand having program instructions stored therein, the processor beingoperable to execute the program instructions, the program instructionsincluding: receiving participant comment signals via the communicationsnetwork from a moderator server, the participant comment signalstransmitted by a plurality of viewer clients to the moderator server viathe communications network; generating moderator comment signals andedited participant comment signals using the participant commentsignals; transmitting the moderator signals and the edited participantcomment signals to the moderator server via the communications network;and receiving moderator interactive program signals from the moderatorserver via the communications network, the moderator interactive programsignals generated by the moderator server using the edited participantcomment signals and the moderator signals.
 21. A computer-readablemedium embodying program instructions for execution by a computer, theprogram instructions adapting a computer for creating and transmittingan interactive program to a plurality of viewer clients using amoderator client, the plurality of viewer clients and the moderatorclient operably coupled to the computer by a communications network, theprogram instructions comprising: receiving participant comment signalsfrom the plurality of viewer clients via the communications network;transmitting the participant comment signals to the moderator client viathe communications network; receiving edited participant comment signalsand moderator signals from the moderator client via the communicationsnetwork; generating interactive program signals using the editedparticipant comment signals and the moderator signals; and transmittingthe interactive program signals to the plurality of viewer clients viathe communications network.
 22. The computer-readable medium of claim21, wherein the program instructions for generating the interactiveprogram signals further include: receiving content signals from acontent server; and generating the interactive program signals using thecontent signals, edited participant comment signals, and the moderatorsignals.
 23. The computer-readable medium of claim 21, the programinstructions further comprising: receiving content signals from acontent server; and transmitting the content signals via thecommunications network to the viewer clients.
 24. The computer-readablemedium of claim 21 wherein the communications network is a virtualprivate network.
 25. The computer-readable medium of claim 21 whereinthe participant comment signals further include an interactive programrating signal.
 26. The computer-readable medium of claim 21 wherein themoderator signals further include a viewer exclusion signalcorresponding to a specific viewer client from the plurality of viewerclients and the program instructions for generating the interactiveprogram signals further include using the viewer exclusion signal toexclude participant comments received from the specific viewer client.27. The computer-readable medium of claim 21 wherein the moderatorsignals further include a viewer invitation signal corresponding to aspecific viewer client from the plurality of viewer clients and theprogram instructions for generating the interactive program signalsfurther include using the viewer invitation signal.